<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<title>DRV_AT24_EVENT_HANDLER Type</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="generator" content="Doc-O-Matic" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link rel="STYLESHEET" href="default.css" type="text/css" />

<script type="text/javascript" src="scripts.js"></script>
</head>
<body class="Element700" onload="onBodyLoadEx('frames.html', 'topic', '00170.html');" onmousedown="onBodyMouseDown();">

<!-- Begin Popups -->

<!-- End Popups -->

<!-- Begin Page Header -->
<div class="Element710" id="areafixed">
<div class="Element94">
<a href="00007.html" target="topic">Driver Libraries Help</a> &gt; <a href="00055.html" target="topic">I2C EEPROM Driver Libraries Help</a> &gt; <a href="00018.html" target="topic">AT24 Driver Library Help</a> &gt; <a href="00019.html" target="topic">Library Interface</a> &gt; e) Data Types and Constants &gt; <a href="00170.html" target="topic">DRV_AT24_EVENT_HANDLER Type</a></div>
<div class="Element92">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element1">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element2">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element90">
<a href="00183.html" target="topic">Previous</a> | <a href="00019.html" target="topic">Up</a> | <a href="00172.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element96">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: DRV_AT24_EVENT_HANDLER Topic Title: DRV_AT24_EVENT_HANDLER Type)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table><div class="Element5">
DRV_AT24_EVENT_HANDLER Type</div>
</div>
</div>

<!-- End Page Header -->

<!-- Begin Client Area -->
<div class="Element720" id="areascroll">
<div class="Element721">

<!-- Begin Page Content -->
<a name="PageContent"></a><div class="Element58">
<a name="4465736372697074696F6E"></a><div class="Element11">
<div class="Element10">
<p class="Element10">
AT24 Driver Transfer Event Handler Function Pointer&nbsp;</p>
<p class="Element10">
This data type defines the required function signature for the AT24 driver event handling callback function. A client must register a pointer using the event handling function whose function signature (parameter and return value types) match the types specified by this function pointer in order to receive transfer related event calls back from the driver.&nbsp;</p>
<p class="Element10">
The parameters and return values are described here and a partial example implementation is provided.</p></div>
</div>
<a name="43"></a><div class="Element99">
C</div>
<div class="Element101"><div class="Element100"><pre class="Element100"><strong><span style="color: #000080">typedef</span></strong> <strong><span style="color: #000080">void</span></strong> (* <strong><span style="color: #000000">DRV_AT24_EVENT_HANDLER</span></strong>)(<a href="00189.html" target="topic">DRV_AT24_TRANSFER_STATUS</a> event, uintptr_t context);</pre></div></div>
<a name="506172616D6574657273"></a><div class="Element14">
Parameters</div>
<div class="Element11">
<div class="Element10">
<div class="Element312">
<div class="TableDiv">
<table cellspacing="0" class="Table3">
<tr>
<td class="Element300" valign="top" width="35%">
<div class="Element301">
Parameters&nbsp;</div></td><td class="Element304" valign="top" width="65%">
<div class="Element305">
Description&nbsp;</div></td></tr><tr>
<td class="Element302" valign="top" width="35%">
<div class="Element303">
event&nbsp;</div></td><td class="Element306" valign="top" width="65%">
<div class="Element307">
Identifies the type of event<br>&nbsp;</div></td></tr><tr>
<td class="Element302" valign="top" width="35%">
<div class="Element303">
context&nbsp;</div></td><td class="Element306" valign="top" width="65%">
<div class="Element307">
Value identifying the context of the application that registered the event handling function.&nbsp;</div></td></tr></table></div></div>
</div>
</div>
<a name="52657475726E73"></a><div class="Element14">
Returns</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
None.</p></div>
</div>
<a name="52656D61726B73"></a><div class="Element14">
Remarks</div>
<div class="Element11">
<div class="Element10">
<p class="Element10">
If the event is DRV_AT24_TRANSFER_STATUS_COMPLETED, it means that the data was transferred successfully.&nbsp;</p>
<p class="Element10">
If the event is DRV_AT24_TRANSFER_STATUS_ERROR, it means that the data was not transferred successfully.&nbsp;</p>
<p class="Element10">
The context parameter contains the handle to the client context, provided at the time the event handling function was registered using the <a href="00171.html" target="topic">DRV_AT24_EventHandlerSet</a> function. This context handle value is passed back to the client as the &quot;context&quot; parameter. It can be any value necessary to identify the client context or instance (such as a pointer to the client's data) instance of the client that made the buffer add request.&nbsp;</p>
<p class="Element10">
The event handler function executes in the driver's interrupt context. It is recommended of the application to not perform process intensive or blocking operations with in this function.&nbsp;</p>
<p class="Element10">
The <a href="00187.html" target="topic">DRV_AT24_Read</a>, <a href="00194.html" target="topic">DRV_AT24_Write</a> and <a href="00186.html" target="topic">DRV_AT24_PageWrite</a> functions can be called in the event handler to submit a new request to the driver.</p></div>
</div>
<a name="4578616D706C65"></a><div class="Element14">
Example</div>
<div class="Element11">
<div class="Element10">
<div class="Element13"><div class="Element12"><pre class="Element12"><strong><span style="color: #000080">void</span></strong> APP_MyTransferEventHandler( <a href="00189.html" target="topic">DRV_AT24_TRANSFER_STATUS</a> event, uintptr_t context )
{
    MY_APP_DATA_STRUCT* pAppData = (MY_APP_DATA_STRUCT *) context;

    <strong><span style="color: #000080">switch</span></strong>(event)
    {
        <strong><span style="color: #000080">case</span></strong> DRV_AT24_TRANSFER_STATUS_COMPLETED:

            <i><span style="color: #008000">// Handle the transfer complete event.</span></i>
            <strong><span style="color: #000080">break</span></strong>;

        <strong><span style="color: #000080">case</span></strong> DRV_AT24_TRANSFER_STATUS_ERROR:
        <strong><span style="color: #000080">default</span></strong>:

            <i><span style="color: #008000">// Handle error.</span></i>
            <strong><span style="color: #000080">break</span></strong>;
    }
}</pre></div></div>
</div>
</div>
</div>
<!-- End Page Content -->

<!-- Begin Page Footer -->
<div class="Element95">
<a href="00007.html" target="topic">Driver Libraries Help</a> &gt; <a href="00055.html" target="topic">I2C EEPROM Driver Libraries Help</a> &gt; <a href="00018.html" target="topic">AT24 Driver Library Help</a> &gt; <a href="00019.html" target="topic">Library Interface</a> &gt; e) Data Types and Constants &gt; <a href="00170.html" target="topic">DRV_AT24_EVENT_HANDLER Type</a></div>
<div class="Element93">
<table width="100%" cellspacing="0" cellpadding="0">
<tr><td width="25%">
<div class="Element3">
MPLAB Harmony Core Help</div>
</td><td width="25%">
<div class="Element4">
<a href="contents.html" target="tocidx">Contents</a> | <a href="00007.html" target="topic">Home</a></div>
</td><td width="25%">
<div class="Element91">
<a href="00183.html" target="topic">Previous</a> | <a href="00019.html" target="topic">Up</a> | <a href="00172.html" target="topic">Next</a></div>
</td><td width="25%">
<div class="Element97">
<a href="mailto:docerrors@microchip.com&subject=MPLAB Harmony Documentation Feedback (Topic ID: DRV_AT24_EVENT_HANDLER Topic Title: DRV_AT24_EVENT_HANDLER Type)&body=Thank you for your feedback! Please include a description of your feedback, and indicate whether you are reporting an an error in the documentation or an enhancement.">Documentation Feedback</a><br> <a href="http://support.microchip.com" target="_blank">Microchip Support</a></div>
</td></tr></table></div>

<!-- End Page Footer -->
</div>
</div>

<!-- End Client Area -->
</body></html>